import java.util.List;


public class Tablero {
	
	private List<Celda> celdas;
	private List<JugadorAlfa> jugadores;
	private int size;
	
	Tablero(int size){
		//size impar > 3
		crearCeldas(size);
	}
	
	//CREAR EL TABLERO
	
	private void crearCeldas(int n){
		for(int x = 0; x<n;x++){
			for(int y = 0; y<n;y++){
				Coordenada coord = new Coordenada(x,y);
				celdas.add(new Celda(coord));
			}
		}
	}
	
	//Crear y UBICAR TESOROS
	//No puede ubicarse en los bordes ni en el medio
	//coordenada ocupada o con tesoro rompe!
	
	public void ponerTesoro(Coordenada coord){
		Tesoro tesoro = new Tesoro();
		Celda celda = dameCeldaDeCoord(coord);
		celda.ponerTesoro(tesoro);
	}
	
	public Celda dameCeldaDeCoord(Coordenada coord){
		for(Celda celda : celdas){
			if(celda.esCoordenada(coord)){
				return celda;
			}
		}
		return null; // :P
	}
	
	//UBICAR JUGADORES
	//coordenada ocupada o con tesoro rompe!
	//pensar movimientos del jugador
	//pensar quien conoce a quien...
	
	
	public void ponerJugadorSur(Coordenada coord){
		Jugador jugador = new JugadorSur(new Coordenada(coord.getX(),coord.getY()));
		Celda celda = dameCeldaDeCoord(coord);
		celda.ponerJugador(jugador);
	}
	
	public void ponerJugadorNorte(Coordenada coord){
		Jugador jugador = new JugadorNorte(new Coordenada(coord.getX(),coord.getY()));
		Celda celda = dameCeldaDeCoord(coord);
		celda.ponerJugador(jugador);
	}
	
	//
	
	
	
	public boolean esBorde(){
		return false; //pregunte a la celda
	}
	public boolean esOcupada(){
		return false; //pregunte a la celda
	}
	public boolean esSur(Celda celda){
		return false;
	}
	public boolean esNorte(Celda celda){
		return false;
	}
	
	public List<Celda> celdasNorte(){
		return null;
	}
	public List<Celda> celdasSur(){
		return null;
	}
	public List<JugadorAlfa> jugadoresSur(){
		return null;
	}
	public List<JugadorAlfa> jugadorNorte(){
		return null;
	}

	public int getSize() {
		return size;
	}

	public void setSize(int size) {
		this.size = size;
	}

}
